KeyChainException Exception

A method of the KeyChain or KeyChainItem classes failed. See the error code returned by KeyChainException to diagnose the problem.

Notes


The following tables shows the values of ErrorNumber and the associated text returned in the Message property.

Error Number

Message

-128

User Cancelled.

-25291

Key Chain not available.

-25292

Key Chain read only.

-25293

Key Chain Authorization failed.

-25294

No such Key Chain.

-25295

Invalid Key Chain.

-25296

Duplicate Key Chain.

-25797

Key Chain Duplicate Callback.

-25298

Key Chain Invalid Callback.

-25299

Key Chain Duplicate Item.

-25300

Key Chain Item Not Found.

-25301

Key Chain Buffer Too Small.

-25302

Key Chain Data Too Large.

-25303

Key Chain No Such Attribute.

-25304

Key Chain Invalid Item Reference.

-25305

Key Chain Invalid Search Reference.

-25306

Key Chain No Such Class.

-25307

No Default Key Chain.

-25308

Key Chain Interaction Not Allowed.

-25309

Key Chain Read Only Attribute.

-25310

Wrong Key Chain Version.

-25311

Key Chain Key Size Not Allowed.

-25312

Key Chain No Storage Module.

-25313

Key Chain No Certificate Module.

-25314

Key Chain No Policy Module.

-25315

Key Chain Interaction Required.

-25316

Key Chain Data Not Available.

-25317

Key Chain Data Not Modifiable.

-25318

Key Chain Create Chain Failed.



Examples

The following example displays a message box if, for example, you try to create more than one KeyChainItem for the same application

Dim NewItem as KeyChainItem
  If System.KeyChainCount > 0 then
    
    NewItem = New KeyChainItem
    'Indicate the name of the application
    NewItem.ServiceName = "MyApplication"
    
    'Create a new keychain item for the application and assign the password
     System.KeyChain.AddPassword NewItem, "SecretPassword"
  Else
     Beep
     MsgBox "You don't have a key chain."
  End if

Exception err as KeyChainException
   MsgBox err.Message+". Error Code: "+ Str(err.errorNumber)

:

The following example uses an Exception block to display a message box if the application specified by ServiceName does not have a KeyChainItem.

Dim ItemToFind as KeyChainItem
Dim password As String
  
ItemToFind = New KeyChainItem
  
'Indicate the name of the application whose keychain item you wish to find
ItemToFind.ServiceName = "MyApplication"
  
  'get application's password from the system keychain
password = System.KeyChain.FindPassword(ItemToFind)
MsgBox "The password for this item is: " + password
  
Exception err as KeyChainException
MsgBox "Can't find item: " + err.Message

See Also

KeyChain, KeyChainItem, RuntimeException classes; System object.